package org.qiyu.liv.living.provider.service;

import org.qiyu.live.common.interfaces.dto.PageWrapper;
import org.qiyu.live.living.interfaces.dto.LivingRoomReqDTO;
import org.qiyu.live.living.interfaces.dto.LivingRoomRespDTO;

import java.util.List;

/**
 * @Description: //todo
 * @Author: 张广焱
 * @Date: 2023-12-13 21:12
 */
public interface ILivingRoomService {
    /**
     * @Description: 开启直播间
     * @Param: @param livingRoomRecordPO
     * @Author: 张广焱
     * @Date: 2023-12-13  21:40:14
     */
    Integer startLivingRoom(LivingRoomReqDTO livingRoomReqDTO);

    boolean closeLiving(LivingRoomReqDTO livingRoomReqDTO);

    /**
     * @Description: 根据用户id查询是否正在开播
     * @Param: @param roomId
     * @Author: 张广焱
     * @Date: 2023-12-14  23:05:08
     */
    LivingRoomRespDTO queryByRoomId(Integer roomId);

    /**
     * @Description: 直播间分页查询
     * @Param: @param livingRoomReqDTO
     * @Author: 张广焱
     * @Date: 2023-12-15  19:48:48
     */
    PageWrapper<LivingRoomRespDTO> list(LivingRoomReqDTO livingRoomReqDTO);


    /**
     * @Description: 查询所有的直播间类型
     * @Param: @param type
     * @Author: 张广焱
     * @Date: 2023-12-15  23:28:04
     */
    List<LivingRoomRespDTO> listAllLivingRoomFromDB(Integer type);
}
